<?php
class Body{
	function main(){
		$data = new DataBase();
    	$name = 'main';
    	$text = $data->LoadText($name);
    	include(PATH_TO_INCLUDE."component/view/$name.php");
	}
	function register(){
		$data = new DataBase();
    	$name = 'registerForm';
    	$text = $data->LoadText($name);
    	include(PATH_TO_INCLUDE."component/view/$name.php");
	}
	function issetUser($login,$pass1,$pass2,$mail,$mail2,$captcha){
		$data = new DataBase();
		try{
		//Проверка апчи
		if($_SESSION['captcha_keystring']!=$captcha) throw new Exception('Капча неправильная',1);
		//Проверка существования пользователя
		if($data->issetUser($login)) throw new Exception('Такой пользователь уже существует',2);
		//
		if(strlen($login)<=5) throw new Exception('Длина логина не должна быть меньше 5',3);
		//
		if($pass1!=$pass2||$pass1=='' || strlen($pass1)<=5)	throw new Exception('Ошибка пароля',4);
		//
		if($mail!=$mail2) throw new Exception('Потовые адреса не совпали',5);
		//
		if(!$this->checkmail($mail)) throw new Exception('Неправильно введёна почта',6);
		
		$this->regUser($login,$pass1,$mail);
		
		echo 'Дальше';
		}catch (Exception $e){
			echo '<div id="error">'.$e->getMessage().'</div>';
			$this->register();
		}
	}
	function checkmail($mail) {
	   // режем левые символы и крайние пробелы
	   $mail=trim($mail);
	   // если пусто - выход
	   if (strlen($mail)==0) return false;
	   if (!preg_match("/^[a-z0-9_-]{1,20}+(\.){0,2}+([a-z
	0-9_-]){0,5}@(([a-z0-9-]+\.)+(com|net|org|mil|".
	   "edu|gov|arpa|info|biz|inc|name|
	[a-z]{2})|[0-9]{1,3}\.[0-9]{1,3}\.[0-".
	   "9]{1,3}\.[0-9]{1,3})$/is",$mail))
	   return false;
	   return true;
	}
	function regUser($login,$pass,$mail){
		try{
		$uniq_id = md5($_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT'].mktime());
		$passw = md5($pass);
		$data = new DataBase();
		$data->inserUser($login,$passw,$mail,$uniq_id);
		$this->sendMail($mail,$uniq_id);
		}catch (Exception $e){
			echo 'Ошибка вставки';
		}
		
	}
	function sendMail($mail,$uniq_id){
		$host = 'http://localhost/';
		// Для отправки e-mail в виде HTML устанавливаем необходимый mime-тип и кодировку
		$headers  = 'MIME-Version: 1.0' . "\r\n";
		$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";
		// Откуда пришло
		$headers .= 'From:Сайт HT-Bet' . "\r\n";
		//Здесь укажите электронный адрес, куда будут уходить сообщения
		$mailto = $mail;
		$subject = "Подтверждение регистарции на сайте";
		$message = 'Для активации аккаунта пройдите по следующей ссылке <a href="'.$host.'registration.php?
		activation='.$uniq_id.'" target="_blank">'.$host.'registration.php?activation='.$uniq_id.'</a>';
		$message .= 'или скопируйте ссылку в окно ввода адреса браузера и нажмите enter.';
		//Отправляем сообщение
		if(sendmail($mailto,$subject,$message,$headers)) {
		echo 'Регистрация завершена, на введеный Вами e-mail было отправлено сообщение для активации аккаунта';
		}
	}
		
}
	function sendmail($mail,$subject,$message,$headers){
		if(mail($mail,$subject,$message,$headers)){
			return true;
		}else{
			return false;
		}
	}
?>